package com.qywx.service;


import com.qywx.entity.UserEntity;
import com.qywx.utils.R;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;


/**
 * @ClassName UserService
 * @Description:
 * @Author wmj
 * @Date 2020/3/4
 * @Version V1.0
 **/
public interface UserService {

    public R  saveUser(UserEntity user);

    public R saveToWechat(UserEntity user);

    public List<UserEntity> findByName(String name,int depid,String usertype,String stat,String status,String id,String category,String gender);

    public R updateUser(UserEntity user);

    R delUserByUserIds(String userIds,String usertype);

    R findByDepartmentId(String departmentId,int page,int size,String status);

    R findByUserid(String userid);

    R exchangeDepartment(String departmentId, String userid);

    R asynchronousDetection();

    R synchronize();

    List<UserEntity> export(String id);

    R findUser(int page, int size,String usertype);

    @Transactional
    public R save(List<UserEntity> list);

    List<UserEntity> exportByUserId(String userid,String usertype);

    R invite(String userid);

    R addUserTag(String userid, String tagid);

    R getMobile(String mobile);

    R updateUserTag(String userid, String delTagid, String saveTagid);

    R findUserCondition(int page, int size, String usertype, String stat, String status);

    R updateStat(String userid);

    R updateThisPlatformUser(UserEntity user);

    R updateWechatUser(UserEntity user);

    String trans(String department);
}
